﻿#include <iostream>
using namespace std;

//void test02() {
//	//赋值不是常量是变量时，数据存在栈区，这样可以修改
//	int ss = 10;
//	const int a = ss;
//	int* p = (int*)&ss;
//	*p = 50;
//	cout << ss << endl;
//}



//// 定义命名空间
//namespace constant {
//    const double PI = 3.141592653;
//    int num1 = 100;
//    int num2 = 200;
//}
//
//int main() {
//
//    //注：这样子使用会报错
//    int num2 = 100;
//    // using命名空间
//    using namespace constant;
//    std::cout << num2 << std::endl;
//
//    return 0;
//}

//namespace A {
//    // void fun1(){};这种写法是错误的
//    void fun1();
//}
//namespace  {
//    // void fun1(){};这种写法是错误的
//    int a = 10;
//}
////命名空间取别名
//namespace newA = A;
//
////注意fun函数不能有主体结构
//void A::fun1() {
//    cout << "重新调用A空间的函数" << endl;
//}
//int main()
//{
//    int a = 100;
//    using namespace A;
//    cout <<a<<endl;
//    newA::fun1();
//    std::cout << "Hello World!\n";
//}

//namespace A {
//    int a = 10;
//    void fun() {
//        cout << "A空间的函数" << endl;
//    }
//    void fun1();
//    struct ss {};
//    class aa{
//    
//    };
//    namespace C {
//        int a = 1000;
//    }
//}
//namespace B {
//    int a = 100;
//}
//namespace B {
//    int c = 10000;
//}
//
//void A::fun1() {
//    cout << "重新调用A空间的函数" << endl;
//}
//int main()
//{
//    int a = 1;
//    A::fun();
//    cout << a << endl;
//    cout << A::a << endl;
//    cout << B::a << endl;
//
//    cout << A::C::a << endl;
//
//    cout << B::c << endl;
//    std::cout << "Hello World!\n";
//}

////const常量
//struct stu
//{
//	int a;
//	int b;
//};
//void test03() {
//	//赋值不是常量是结构体变量时，数据存在栈区，这样可以修改
//	const stu obj = { 1,2 };
//	struct stu* p = (stu*)&obj;
//	cout << obj.a << "--" << obj.b << endl;
//	p->a = 3;
//	p->b = 4;
//	cout << obj.a << "--" << obj.b << endl;
//}
//

int main() {
	
	return 0;
}





